Before an integrated circuit can be fabricated, a design for the integrated circuit must be created. This design is more than just a basic circuit diagram that depicts which elements are connected to which, and how they are connected. The integrated circuit design as contemplated herein includes layout of the circuit, timing analysis, and a broad array of other information about performance of the individual elements from which the design is constructed, and the overall performance of the integrated circuit that will be constructed according to the design. The integrated circuit design that is created is a physical object, embodied as one or more specification on paper, or more likely, data encoded on a computer readable medium. The data can be acted upon by a processor to produce mask sets for photolithography, and create programs for the processing equipment to run during fabrication of the integrated circuit.
As the term is used herein, “integrated circuit” includes devices such as those formed on monolithic semiconducting substrates, such as those formed of group IV materials like silicon or germanium, or group III-V compounds like gallium arsenide, or mixtures of such materials. The term includes all types of devices formed, such as memory and logic, and all designs of such devices, such as MOS and bipolar. The term also comprehends applications such as flat panel displays, solar cells, and charge coupled devices.
Frequently, a design for an integrated circuit that appears timing-clean after logical synthesis can actually have a multitude of timing issues after it is taken into physical design, where physical effects are taken into account. These physical effects include—but are not limited to—the size of the die, floorplan layout, clock skew, congested areas, and so forth.
One method to resolve this issue is to force the synthesis stage of the design process to perform additional analysis on all of the paths of the integrated circuit design, and build additional margin into an entire group of paths from the very beginning. The great disadvantage of this approach, however, is that integrated circuit design that is produced in this manner is much larger and consumes more power than is necessary. This results in costly die-size growth and violations of the power budget.
What is needed, therefore, is a system that overcomes problems such as those described above, at least in part.